package edu.hawaii.ics414.blackjack.player;

import edu.hawaii.ics414.blackjack.card.Card;

/**
 * Specifies the behavior of a card counting AI.
 * 
 * @author Branden Ogata
 *
 */

public interface CardCounter
{
  /**
   * Updates the count of a particular card.
   * 
   * @param card The Card that was seen.
   * 
   */
  
  public void updateCount(Card card);
  
  /**
   * Resets the count for all cards that this AI is counting.
   * 
   */
  
  public void resetCount();
  
  /**
   * Returns a pointer to this SemiProPlayer as a CardCounter.
   * 
   * @return The CardCounter instance pointing to this SemiProPlayer.
   *  
   */
  
  public CardCounter getCardCounter();
}
